Proteins and other biological macromolecules interact with each other in specific ways. This specificity is determined by the geometric arrangement and chemical properties of atoms at the surfaces of the interacting molecules. A detailed description of the molecular surface can be produced by a combination of X-ray crystallographic structure determination, solvent-accessibility calculations and computer graphics. This detailed molecular surface description can be applied to understanding systems where macromolecules interact, for example: the binding of an antibody molecule to a protein, the binding of gene regulatory proteins to DNA, the aggregation of hemoglobin subunits to form the tetrameric protein, the blocking of the active sites of trypsin and carboxypeptidase enzymes by inhibitor proteins, and the assembly of viral coat protein monomers into capsids. Molecular recognition is dependent on both chemical and geometric complementarity between the surface regions forming the contact. Chemical complementarity can be investigated by analyzing hydrogen bonds, salt links and hydrophobic contacts at molecular interfaces. Geometric complementarity can be studied by characterizing the shapes of the outer surfaces of macromolecules. The outer surface of a protein is computed by rolling a sphere, representing a water molecule, over the three-dimensional structure of the protein. For each region of protein surface, a set of parameters characterizing the shape of the region should then be computed. For the situation where molecules have been co-crystallized and the atomic structure of the complex has been determined, the geometric complementarity at the interface would be measured by comparing the shape parameters of the surface regions in contact. Ultimately, it should be possible to predict associations between pairs of proteins, or between a protein and a nucleic acid, by computationally docking together surface regions with complementary shapes. This ability would be very useful, since it would augment the amount of structural information known, without requiring any additional crystallographic work.